"use strict";
(() => {
	/**
	 * 计算分割值 （感觉还是有Bug）
	 * @param min 最小值
	 * @param max 最大值
	 * @param split 分割次数
	 * @param value 基础值
	 * @param unit 递增单位
	 */
	function SplitNumber(min, max, split, value, unit) {
		if (split <= 0) {
			return [];
		}
		else if (unit <= 1) {
			throw new Error("分割递增单位(unit) 不能小于1");
		}
		var space = max - min;
		var temp = value;
		while (true) {
			var split_len = space / temp;
			if (split_len > split) {
				if (space >= temp * unit) {
					temp *= unit;
				}
				else {
					temp *= unit / 2;
				}
			}
			else {
				if (split_len <= split / 2) {
					if (temp / 2 > value) {
						temp /= 2;
					}
					else {
						break;
					}
				}
				else {
					break;
				}
			}
		}
		var number = temp;
		var valieList = [];
		var left_ceil = min - min % number;
		for (var i = -split; i < split * 2; i++) {
			var save = left_ceil + number * i;
			if (save < min) {
				continue;
			}
			if (save > max) {
				break;
			}
			valieList.push(save);
		}
		return valieList;
	};
	window.Global_SplitNumber = SplitNumber;
})();
